package com.xu.demo.singletonPattern;

/**
 * 饿汉式单例
 */
public class HungrySingleton {

    public final static HungrySingleton hungry = new HungrySingleton();

    /**
     * 很明显，一进来就加载对象，存在浪费空间
     * 这时候我们需要一个用的时候才加载对象，不用不加载
     * 这个时候可以使用懒汉式单例
     */
    private HungrySingleton() {
    }

    public static HungrySingleton getInstance() {
        return hungry;
    }

    public static void main(String[] args) {
        for (int i = 0; i < 10; i++) {
            new Thread(() -> {
                System.out.println(Thread.currentThread().getName() + ":"
                        + LazzySingleton.getInstance().hashCode());
                ;
            }).start();
        }
    }
}

